package com.inno.auth.common.utils;

import org.apache.commons.lang3.StringUtils;

/**
 * 脱敏工具类
 *
 * @author ruoyi
 */
public class DesensitizedUtil extends cn.hutool.core.util.DesensitizedUtil {
    /**
     * 密码的全部字符都用*代替，比如：******
     *
     * @param password 密码
     * @return 脱敏后的密码
     */
    public static String password(String password) {
        if (StringUtils.isBlank(password)) {
            return StringUtils.EMPTY;
        }
        return StringUtils.repeat('*', password.length());
    }

    /**
     * 手机号中间四位用星号隐藏，比如：138****8888
     */
    public static String mobile(String mobile) {
        if (StringUtils.isBlank(mobile)) {
            return StringUtils.EMPTY;
        }
        return StringUtils.left(mobile, 3)
                .concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(mobile, 4), StringUtils.length(mobile), "*"), "***"));
    }

}
